There are several inadequate approaches to software installation and configuration. One approach is to provide installation/configuration defaults. However, such defaults are not tailored to each user. Thus, each user has to spend significant time tailoring the software product to suit his or her specific needs. Another approach to software installation/configuration is to have a user select from a tier of user types, for example, expert, intermediate, or novice. Such tiers, however, are too broad. A programmer is by definition not a novice. Therefore, any tiers or settings developed by a programmer may be misaligned with the corresponding user's capabilities. Further, users may be unable to correctly categorize themselves into one of these preset tiers.
Still another approach is to provide custom automation, such as enterprise software distribution. Custom automation tailors software distribution packages to a group. Individuals are lumped into organization categories. In addition, tailoring software distribution to groups is expensive because many different packages must be created, tested, and managed. Another option is to have users install software via saved settings from other users or groups. However, such user or group settings must be manually created. In addition, such user or group settings must be known to the user prior to installing and configuring software. The user or group settings may also not be a good match for a particular user.
U.S. Patent Application Publication No. 2005/0251786 A1 discloses a system and method for dynamic software installation instructions. A customized instruction generator asks a user particular questions. In turn, the user provides answers, or system parameters. Based upon the user's response, the customized instruction generator asks dependent questions to further collect more detailed system parameters. Once the customized instruction generator collects the system parameters it requires, the customized instruction generator retrieves an instruction template that includes parameter placeholders. The customized instruction generator replaces the parameter placeholders with corresponding system parameters, includes particular instruction subsections based upon the system parameters, and generates customized instructions for the user to follow in order to install software on a computer system.
U.S. Patent Application Publication No. 2002/0087966 A1 discloses a Wizard Building Application, Database, and Setup Wizard Application to solicit and apply user specific information to allow the installation of software packages by the end user without a software expert to guide the installation.
U.S. Patent Application Publication No. 2005/0125509 A1 discloses automated software provisioning based upon a set of role definitions for a user of a configurable device such as a computer or personal digital assistant. Role-based software provisioning automatically distributes the appropriate software programs and updates to computers that are owned by users based on the role of each user, thereby avoiding the need for intensive manual efforts to determine which computers need what software.
U.S. Pat. No. 6,282,711 B1 discloses a method for installing a subset of software components and data files contained in a component pool in a distributed processing network such as the Internet. An installation package delivered to a requesting end user is custom configured at a remote server location prior to delivery to a client system operated by the user, in response to the user's inputs. The delivered installation package contains only the programs, data, and local installation tools required for the user's unique installation requirements. The user initiates the installation process by connecting to the remote server system via a telecommunications link within a distributed processing network. Engaging in a dialog with the server which provides informational links to server-side databases, the user chooses all software components and options that he desires his software package to have. After selection of all options, a single package is manufactured on the server. A single download then occurs of a single file.